System and method for an efficient dynamic multi-unit auction

ABSTRACT

The present invention implements an auction in which multiple types of goods may be auctioned in a dynamic process. In a preferred embodiment, the present invention is a system and method for a computer implemented dynamic multi-unit auction in which the price paid or received by bidders tends to be independent of their own bids, in which participants may be provided with information concerning their competitors&#39; bids as the auction progresses, and in which the confidentiality of high values may be maintained. Participants&#39; quantities bid at a given time may be restricted to be less than or equal to the quantities bid at an earlier time. These features provide the advantage of improving economic efficiency of the auction design over the prior art.

RELATED APPLICATIONS

This application is a continuation of my prior application Ser. No.09/898,483 filed Jul. 5, 2001. Application Ser. No. 09/898,483 is acontinuation-in-part of application Ser. No. 09/573,007 filed May 18,2000.

This application is also related to prior application Ser. No.60/216,338, filed Jul. 5, 2000; and Ser. No. 60/299,600 filed Sep. 5,2000; as well as application Ser. No. 60/293,510, filed May 29, 2001;and Ser. No. 60/294,246, filed May 31, 2001. The disclosures of theforegoing applications are incorporated herein by this reference.

FIELD OF THE INVENTION

The present invention relates to improving computer-implemented auctionsand, more particularly, to computer implementation of an efficientdynamic multi-unit auction.

BACKGROUND OF THE INVENTION

Auction formats in the art tend generally to be of the sealed-bid orascending-bid variety. In the standard sealed-bid auction, bidders—inone single bidding round—simultaneously and independently submit bids tothe auctioneer, who then determines the auction outcome. In the standardascending-bid auction, bidders—in a dynamic bidding process—submit bidsin real time until no more bids are forthcoming. An ascending-bid formatoffers the advantage that there is feedback among participants' bids:each bidder is able to infer other bidders' information about the valueof the item(s) as the auction progresses and incorporate thisinformation into his subsequent bids. This feedback tends to result inmore efficient auction outcomes as well as in more aggressive bidding,resulting in higher expected revenues for the seller.

However, standard ascending-bid formats—such as the design used by theFederal Communications Commission for auctioning radio communicationsspectrum—have the disadvantage that they do not generally lead tooutcomes which are efficient in the sense of assigning items to thebidders who value them the most. Most ascending-bid auction formats havethe unfortunate property that identical items sell at the uniform pricereached at the end of the auction. This creates incentives for biddersto engage in demand reduction: bidders have incentive to understate thevalues that they place on marginal units in order to reduce themarket-clearing price (and, hence, the price they will pay on theinframarginal units that they will win in any case). This has clearnegative implications both for efficiency and for revenues.

My prior patent, “System and Method for an Efficient Dynamic Auction forMultiple Objects,” (U.S. Pat. No. 6,026,383, issued 15 Feb. 2000)provides an early version of a system and method for acomputer-implemented dynamic auction, which may achieve efficiency forsituations involving multiple identical objects. The current inventionis an improved system and method for a computer-implemented dynamicauction, which improves upon the previous invention both in its efficacyof performance and in the generality of economic environments where itmay perform efficiently.

SUMMARY OF THE INVENTION

The present invention is a system and method for implementing on acomputer a dynamic multi-unit auction in which the price paid orreceived by bidders tends to be independent of their own bids, in whichparticipants may be provided with information concerning theircompetitors' bids as the auction progresses, and in which theconfidentiality of high values is maintained. This provides theadvantage of improving the economic efficiency of the auction designover the prior art. The present invention usefully enables a seller orbuyer to efficiently auction multiple types of goods or services, and toefficiently auction items with complex possibilities for substitution.

The present invention is a computer or computer system that receivesbids from a plurality of bidders for a plurality of items in a dynamicbidding process and usually determines an allocation of the items amongbidders. The present invention is also a computer-implemented method forreceiving bids from a plurality of bidders for a plurality of items in adynamic bidding process and usually determining an allocation of theitems among bidders. The present invention is also a machine-readablemedium having stored thereon data representing sequences ofinstructions, which when executed by a computer or computer system,cause said computer or computer system to receive bids from a pluralityof bidders for a plurality of items in a dynamic bidding process andusually to determine an allocation of the items among bidders.

In one embodiment, the invention comprises a bidding informationprocessor (BIP) together with an auctioneer terminal (AT) and aplurality of bidder terminals (BT's) which communicate with the biddinginformation processor via a network. Bidders at the bidder terminalsenter bids in multiple rounds, and may observe displayed auctioninformation. The auctioneer at the auctioneer terminal controls theprogress of the auction. The BIP, the AT, and the BT's communicate andprocess information in order to conduct an auction.

Suppose that m (m≧1) types of items are being auctioned, and one or moreunits of each type are being auctioned. An auction in accordance with anembodiment of the present invention proceeds as follows. First, theauctioneer (i.e., the auctioneer terminal) establishes a price vector,(P₁, . . . ,P_(m)), which includes a price for each of the m types ofitems subject to the auction. The auctioneer communicates the pricevector to the auction computer (i.e., bidding information processor),which in turn communicates it to bidders (i.e., bidder terminals).Second, plural bidders respond with bid vectors indicating the quantityof each respective type of item that the bidder wishes to transact atthe current price vector. Let the bidders be superscripted by i, wherei=1, . . . , n. The quantity vector for bidder i is denoted by (Q₁ ^(i),. . . ,Q_(m) ^(i)). Also, let the quantities of the respective types ofitems being auctioned be denoted by ( Q ₁, . . . , Q _(m)). The auctioncomputer then determines, based on the received bids, whether theauction should continue. Typically, the starting price vector isselected such that the aggregate quantity of each type of item desiredby all the bidders (i.e., Σ_(i=1) ^(n) Q_(k) ^(i)) is greater than thequantity of each type of item being auctioned (i.e., Q _(k)). In thisevent, the auction computer determines that the auction will continue,and either the auction computer or the auctioneer will establish arevised price vector (which is typically larger in each of its mcomponents than the initial price vector). The auction computer thensends to one or more bidders the revised price vector. Next, pluralbidders respond with bid vectors indicating the quantity of eachrespective type of item that the bidder wishes to transact at therevised price vector. Again, typically, the aggregate quantity of eachtype of item desired by all the bidders will not equal the availablequantity, and a determination is again made that the auction shouldcontinue. Nevertheless, one or more items of a particular type may becredited with a particular bidder. The item(s), if any, will be creditedat a price in a closed interval between the price contained in the(previous) price vector and the price contained in the revised pricevector. In one embodiment, items are credited at the price contained inthe revised price vector; in another embodiment, items are credited atthe price contained in the (previous) price vector; and in a thirdembodiment, items are credited at the average of the price contained inthe revised price vector and the price contained in the (previous) pricevector. In one preferred embodiment, the determination of whether aparticular bidder is credited with a selected type of item is based onwhether the sum of the bids of other bidders at the revised price vectoris different from the sum of the bids of other bidders at the (previous)price vector. In this embodiment, if the two sums are different, theparticular bidder is credited with a number of the selected type ofitems equal to the change in the sum of the bids of other bidders. Thisprocess continues until a determination is made that the auction shouldnot continue. In one preferred embodiment, after the determination toend the auction is made, the items are allocated to bidders according totheir final bid vectors, and the payments of bidders are based on thecumulative sequence of credits that occurred during the course of theauction.

Certain constraints are desirable in order for this auction to operateoptimally and to reach an economically efficient outcome. One exemplaryconstraint is an activity rule which constrains a bidder not to increasehis quantity, summed over the m types of items, from one bid in theauction to the next. Another exemplary constraint is a more stringentactivity rule which constrains a bidder not to increase his quantity,summed over a group of types of items, from one bid in the auction tothe next. A third exemplary constraint is a more stringent activity rulewhich constrains a bidder not to increase his quantity, individually oneach of the m types of items, from one bid in the auction to the next. Afourth exemplary constraint is a reduction rule which constrains abidder not to decrease his quantity, for any single type of item, beyondthe point where the sum of the quantities bid for this type of item byall bidders equals the sum of the quantities being auctioned. (If, in agiven round, two or more bidders simultaneously attempt to decreasetheir quantities, for any single type of item, having the effect ofreducing bids beyond the point where the sum of the quantities bid forthis type of item by all bidders equals the sum of the quantities beingauctioned, the auction procedure will resolve this discrepancy. Forexample, the auctioneer may honor these attempts to decrease in order oftime priority, or may ration these simultaneous attempts to decrease inproportion to the attempted reductions.)

While an auction following these rules could be conducted manually,computerized conduct of the auction allows the auction to be conductedwith all bidding information taken into account, while controlling thedegree to which the information itself is disclosed to the participants.Computerized conduct of the auction also allows the auction to beconducted swiftly and reliably, even if bidders are not located on-site.The amount of information which is transmitted to the bidder terminalsand/or actually displayed to the bidders may be carefully controlled. Inone embodiment, all bidding information is displayed to the bidders. Inanother embodiment, no bidding information is displayed to the bidders;only the results of the auction are displayed. A number of intermediateembodiments are also possible, in which some but not all biddinginformation is displayed to the bidders. For example, in one preferredembodiment, the auctioneer disclose only the aggregate quantity bid foreach type of item in each round, as opposed to disclosing eachindividual bid.

My prior U.S. Pat. No. 6,026,383 treats auctions for multiple, identicalobjects and close substitutes. The earlier application's efficientauction with one price clock exploited features of the homogeneous-goodenvironment to construct an eminently-simple dynamic procedure.Unfortunately, the cases of multiple types of related items, or itemswith complex possibilities for substitution, do not lend themselves toquite as simple a procedure. My other prior patents, “ComputerImplemented Methods and Apparatus for Auctions,” U.S. Pat. No.5,905,975, issued 18 May 1999, and U.S. Pat. No. 6,021,398, issued 1Feb. 2000, describe other auction designs for multiple, dissimilaritems. However, the current auction design appears likely in practice tobe simpler and to run more swiftly, as well as placing lowercomputational demands on bidders.

The present invention extends my auction design described in U.S. Pat.No. 6,026,383 to treat—in a simple way—the case of auctioning a set ofitems which includes two (or more) items that are neither identical norperfect substitutes to one another, so that two or more price clocks arerequired. Henceforth, this will be described for short as a situationwith “multiple types of multiple items,” or simply “heterogeneous items”or “heterogeneous objects.” Often, but not always, the heterogeneousitems auctioned together will bear some relationship to one another: forexample, they may be licenses or rights to perform essentially the sameactivity at different geographic locations; or they may be securitiesissued by the same entity but with different durations to maturity; orthey may be related goods with slightly different characteristics thatrender them only imperfect substitutes.

The present invention may also be better suited than previous auctiondesigns for treating the case of identical objects or perfectsubstitutes which exhibit “increasing returns” for bidders. “Increasingreturns” refers to a situation where the extra value that a bidderderives from an (N+1)^(st) unit is greater than the extra value that abidder derives from an N^(th) unit. For example, this would include asituation where the utility from two units is strictly more than doublethe utility derived from one unit.

The present invention is useful for conducting auctions involving itemsoffered for sale by the bidders, as well as items offered for sale tothe bidders. Although terms such as “vector of quantities demanded” (bya bidder) and “demand curve” (of a bidder) are used to describe thepresent invention, the terms “vector of quantities offered” (by abidder) and “supply curve” (of a bidder) are equally applicable. In somecases, this is made explicit by the use of both terms, or by the use ofthe terms “vector of quantities transacted” (by a bidder) and“transaction curve” (of a bidder). The term “quantities transacted”includes both “quantities demanded” and “quantities offered”. The term“bid” includes both offers to sell and offers to buy. The term“transaction curve” includes both “demand curve” and “supply curve”.Moreover, any references to “quantities being offered” includes both“quantities being sold” by the auctioneer, in the case this is anauction for selling items, as well as “quantities being bought orprocured” by the auctioneer, in the case this is an auction for buyingitems or procuring items.

Moreover, while standard auctions to sell typically involve ascendingprices, the present invention may utilize prices that ascend and/ordescend. One useful situation in which the price would be allowed todescend is a procurement auction or “reverse auction,” an auction tobuy.

Throughout this document, the terms “objects”, “items”, “units” and“goods” are used essentially interchangeably. The inventive system maybe used both for tangible objects, such as real or personal property,and intangible items, such as telecommunications licenses or electricpower. The inventive system may be used in auctions where the auctioneeris a seller, buyer or broker, the bidders are buyers, sellers orbrokers, and for auction-like activities which cannot be interpreted asselling or buying. The inventive system may be used for items including,but not restricted to, the following: public-sector bonds, bills, notes,stocks, and other securities or derivatives; private-sector bonds,bills, notes, stocks, and other securities or derivatives; communicationlicenses and spectrum rights; clearing, relocation or other rightsconcerning encumbrances of spectrum licenses; electric power and othercommodity items; rights for terminal, entry, exit or transmissioncapacities or other rights in gas pipeline systems; airport landingrights; emission allowances and pollution permits; and other goods,services, objects, items or other property, tangible or intangible. Itmay also be used for option contracts on any of the above. It may beused in initial public offerings, secondary offerings, and in secondaryor resale markets.

The network used, if any, can be any system capable of providing thenecessary communication to/from BIP, BT, and AT. The network may be alocal or wide area network such as, for example, ethernet, token ring,the Internet, the World Wide Web, the information superhighway, anintranet or a virtual private network, or alternatively a telephonesystem, either private or public, a facsimile system, an electronic mailsystem, or a wireless communications system.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a graphical depiction of the architecture of an exemplaryclient-server computer system in accordance with an embodiment of theinvention;

FIG. 2 is another graphical depiction of an exemplary computer system inaccordance with an embodiment of the invention;

FIG. 3 is a detail of one element of the computer system of FIG. 2;

FIG. 4 is a flow diagram of an auction process in accordance with oneembodiment of the invention;

FIG. 5 is a more detailed flow diagram illustrating, in more detail, anelement of the diagram of FIG. 4;

FIGS. 6 a and 6 b are more detailed flow diagrams illustrating, in moredetail, elements of the diagram of FIG. 4;

FIG. 7 is a more detailed flow diagram illustrating, in more detail, anelement of the diagram of FIG. 4;

FIG. 8 is a more detailed flow diagram illustrating, in more detail, anelement of the diagram of FIG. 4; and

FIGS. 9 a, 9 b and 9 c are more detailed flow diagrams illustrating, inmore detail, elements of the diagram of FIG. 4.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The drawings of FIGS. 1-4 of my prior U.S. Pat. No. 6,026,383 and ofFIGS. 1-12 of my prior U.S. Pat. No. 5,905,975, and the associated textof each, provide a general superstructure for the present auction methodand system, especially as it relates to the computer implementationthereof. Moreover, the terminology established in the previousapplications will be relied upon as needed. The following descriptionwill detail the flow of the novel features of the preferred embodimentsof the present method and system for an efficient dynamic multi-unitauction.

Before describing the auction process in detail, reference is made toFIG. 1 to describe the architecture of an exemplary computer system inaccordance with an embodiment of the present invention. In the graphicaldepiction of FIG. 1, the computer system consists of multiple clients 20a-n and 30 communicating with the server 10 over a network 40. Theclients 20 a-n are the bidders, the client 30 is the auctioneer, and theserver 10 is the auction computer. The server 10 consists of a CPU 11,memory 12, a data storage device 13, a communications interface 14, aclock 15, an operating system 16, and an auction program 17.

FIG. 2 is another graphical depiction of an exemplary computer system inaccordance with an embodiment of the present invention. The auctionsystem of FIG. 2 includes an auction computer 60 (sometimes alsoreferred to as a Bidding Information Processor or BIP), a plurality ofuser systems 70 a, 70 b and so on (sometimes also referred to as BidderTerminal or BT), each user system 70 a-n representing an individualbidder, and a user system 80 (sometimes also referred to as anAuctioneer Terminal or AT). The systems 60, 70 a-n, and 80 communicateover a network 90. The network represents any system capable ofproviding the necessary communication to/from BIP, BT, and AT. Thenetwork may be a local or wide area network such as, for example,ethernet, token ring, the Internet, the World Wide Web, the informationsuperhighway, an intranet or a virtual private network, or alternativelya telephone system, either private or public, a facsimile system, anelectronic mail system, or a wireless communications system. Each of thesystems 60, 70 a-n, and 80 may include a typical user interface 65, 75a-n, 85 for input/output which may include a conventional keyboard,display, and other input/output devices. Within each of the systems, theuser interface (65, 75 a-n, 85) is coupled to a network interface (64,74 a-n, 84), which in turn communicates via the network 90. Both theuser interface and network interface connect, at each system, to a CPU(62, 72 a-n, 82). Each system includes a memory (66, 76 a-n, 86). TheBIP 60 also includes a clock 61 and a data storage device 63, which willordinarily contain a database. (However, in some embodiments thedatabase might instead be stored in memory 66.) The memory 66 of the BIP60 can further be broken down into a program 67, data 68 and anoperating system 69. The memory (76 a-n, 86) of the BT's 70 a-n and theAT 80 may include a web browser (for example, Internet Explorer orNetscape) (79, 89) or other general-purpose software, but notnecessarily any computer program specific to the auction process. Ineach system the CPU (62, 72 a-n, 82) represents a source of intelligencewhen executing instructions from the memory (66, 76 a-n, 86) so thatappropriate input/output operations via the user interface and thenetwork interface take place as is conventional in the art. Theparticular steps used in implementing the inventive auction system aredescribed in more detail below. In one embodiment, each of the systemsare personal computers or workstations.

FIG. 3 is a more detailed illustration of an exemplary BIP 60 showingdetails of the database. As discussed for FIG. 2, the database isordinarily stored on a data storage device 63, although in someembodiments it might instead be stored in memory 66. As depicted in FIG.3, the database includes provision for creating, storing, and retrievingrecords representing Items in the Auction 63-1, Status of the Items inthe Auction 63-2, Auction Schedule 63-3, Current Price(s) 63-4, List ofBidder ID's 63-5, List of Passwords 63-6, Bidding History 63-7, andConstraints on Bids 63-8. The particular set of data required for anyparticular auction and the format of that datum or data (such as scalar,vector, list, etc.) is more particularly specified by the detaileddescription of that auction.

Embodiments Concerned with Heterogeneous Commodities

Many of the most useful embodiments of the present invention apply insituations where an entity wishes to sell or buy heterogeneous items orcommodities. A type of item is defined so that two units of the sametype are identical items or close substitutes, while two units ofdifferent types exhibit significant differences in time, location or anyother product characteristics. Typically, there are multiple units ofeach type of item. Items or commodities are defined to be heterogeneouswhen there are two or more types of items.

The various embodiments of the present invention tend to be the mostuseful when the items are heterogeneous (so that the system and methodfor a dynamic auction of homogeneous commodities, described in U.S. Pat.No. 6,026,383, does not apply), but nevertheless there is someconnection or relation between the different types of items (so thatthere is good reason to sell or buy the different types of commoditiesin a single auction process). Examples of heterogeneous items for whichthere may be significant commercial possibilities for embodiments of thepresent invention include the following:

-   -   Treasury bonds or other securities: For example, a government or        central bank may wish to auction 3-month, 6-month and 12-month        Treasury securities together. Thus, there are three types of        heterogeneous items.    -   Electricity contracts: An electric generating company may wish        to simultaneously auction some forward contracts or options        contracts for base-load and peak-load electricity generation,        with durations of 2 months, 3 months, 6 months, 12 months, 24        months and 36 months, respectively. Thus, there are 2×6=12 types        of heterogeneous commodities.    -   Entry capacity into a gas pipeline system: A gas pipeline        company wishes to simultaneously auction the capacity to enter        the gas pipeline system at five geographically-dispersed        terminals. Thus, there are five types of heterogeneous        commodities.    -   Two or more heterogeneous consumer commodities (e.g., oranges        and grapefruits).

In what follows, we will assume that m (m≧1) types of items are beingauctioned, and that there are n (n≧1) bidders participating in theauction. An auction in accordance with an embodiment of the presentinvention proceeds as follows. First, the auctioneer (i.e., theauctioneer terminal) determines a starting price vector, (P₁, . . .,P_(m)), and transmits it to the bidding information processor, which inturn transmits it to bidders (i.e., bidder terminals). Second, a bidderresponds with a bid vector indicating the quantity of each respectivetype of item that the bidder wishes to transact at the current pricevector. Let the bidders be superscripted by i, where (i=1, . . . , n)The bid vector for bidder i is denoted by (Q₁ ^(i), . . . ,Q_(m) ^(i)).The following definitions are helpful in describing the processassociated with a first embodiment of the present invention.

DEFINITIONS

The available quantities ( Q ₁, . . . , Q _(m)) refer, in the case of anauction to sell, to the quantities of the m respective types of itemsoffered to be sold in the auction or, in the case of an auction to buy(i.e., a procurement auction or a “reverse auction”), to the quantitiesof the m respective types of items offered to be bought in the auction.Optionally, the available quantities may be allowed to depend on theprices, or otherwise be contingent on the progress of the auction.

The current prices comprise a vector, (P₁, . . . ,P_(m)), whosecomponents represent the prices for the m respective types of items.

The current bid of bidder i comprises a vector, (Q₁ ^(i), . . . ,Q_(m)^(i)), whose components represent the quantities that bidder i iswilling to buy (in the case of an auction to sell) or to sell (in thecase of an auction to buy) at the current prices for the m respectivetypes of items.

The current bids comprise the collection of vectors, {Q₁ ^(i), . . .,Q_(m) ^(i)}_(i=1) ^(n), consisting of the current bid of bidder i forevery bidder (i=1, . . . , n) in the auction.

The bidding history comprises the current prices and the current bidsassociated with the present time and all earlier times in the currentauction.

A clock auction is a dynamic auction procedure whereby: the auctioneerannounces the current prices to bidders; the bidders respond withcurrent bids; the auctioneer determines whether the auction shouldcontinue based on the bidding history; the auctioneer updates thecurrent prices based on the bidding history and the process repeats, ifit is determined that the auction should continue; and the auctioneerallocates the items among the bidders and assesses payments among thebidders based on the bidding history, if it is determined that theauction should not continue.

Observe that a “clock auction” differs from a standard ascending-bidelectronic auction in the following important sense. In standardascending-bid electronic auctions—such as in the Federal CommunicationsCommission auctions for radio communications spectrum or in eBayauctions—the bidders name prices (and, perhaps also, quantities) thatthey propose to pay for the items being auctioned, in an iterativeprocess. In a standard clock auction, the auctioneer sets the pace forprice increases, and bidders respond only with quantities in aniterative process. (However, in the discussion of Intra-Round Bids,below, it will be seen that there still may be a role for bidders namingprices—to a limited extent—in a clock auction.)

FIG. 4 is a flow diagram of a clock auction in accordance with oneembodiment of the present invention. The process starts with step 102,in which memory locations of a computer are initialized. In onepreferred embodiment, the appropriate memory locations of the biddinginformation processor (auction computer) are initialized withinformation such as the items in the auction, the available quantity ofeach type of item in the auction, the initial price vector, the auctionschedule, a list of bidder ID's, and a list of passwords. In step 104, acomputer outputs auction information, including the starting pricevector (P₁, . . . ,P_(m)). In one preferred embodiment, the biddinginformation processor outputs the auction information through itsnetwork interface and transmits it via the network. The bidder terminalsthen receive the auction information through their network interfacesand display the information to bidders through their user interfaces. Instep 106, a computer receives bids (Q₁ ^(i), . . . ,Q_(m) ^(i)) frombidders. In one preferred embodiment, a bidder inputs his bids throughthe user interface of the bidder terminal, which then outputs theauction information through its network interface and transmits it viathe network. The bidding information processor then receives the bidsthrough its network interface for use in the next step. In step 108, acomputer applies constraints, if any, to the received bids, and entersonly those bids that satisfy said constraints. This process isillustrated in greater detail in FIGS. 6 a and 6 b. In one preferredembodiment, the constraints are applied at the bidding informationprocessor, although they may also easily be applied at the bidderterminals. In step 110, a computer calculates changes, if any, tobidders' payment accounts, based on the entered bids. This process isshown in more detail in FIG. 5. In one preferred embodiment, the changesto bidders' payment accounts are calculated at the bidding informationprocessor. In step 112, a computer determines whether the auction shouldcontinue. An exemplary process of step 112 is illustrated in greaterdetail in FIG. 7. In one preferred embodiment, this determination occursat the bidding information processor.

If the auction should continue, the process goes to step 114, in which acomputer updates the price vector (P₁, . . . ,P_(m)), and step 116, inwhich a computer updates other auction information, if any. An exemplaryprocess of step 114 is illustrated in greater detail in FIG. 8. In onepreferred embodiment, the bidding information processor automaticallygenerates a suggested revised price vector, outputs the suggestedrevised price vector through its network interface, and transmits it viathe network. The auctioneer terminal then receives the suggested revisedprice vector through its network interface and displays it to theauctioneer through its user interface. The auctioneer either approves ormodifies the revised price vector through the user interface of theauctioneer terminal, which then outputs the revised price vector throughits network interface and transmits it via the network. The biddinginformation processor then receives the revised price vector through itsnetwork interface for use in subsequent steps. The process then loops tostep 104.

If the auction should not continue, the process goes to step 118, inwhich a computer outputs a final message, including the allocation ofitems among bidders and the payments of the bidders. In one preferredembodiment, the bidding information processor takes the allocation ofitems among bidders to be their final bids and takes the payments of thebidders to be the final amounts in their payment accounts, and outputsthe allocation and payment outcome through its network interface andtransmits it via the network. The bidder terminals and auctioneerterminal then receive the allocation and payment outcome through theirnetwork interfaces and display the information to bidders and theauctioneer through their user interfaces. The process then ends.

Embodiments Concerned with an Efficient Dynamic Auction forHeterogeneous Commodities

FIG. 5 is a flow diagram of the subprocess of step 110 in which acomputer calculates changes, if any, to bidders' payment accounts. Theembodiment of the present invention shown in FIG. 5 makes bidders'payments as independent as possible of their own bids, and so a bidderhas little incentive to manipulate the auction process even if thebidder possesses market power. An auction that utilizes the process ofFIG. 5 will henceforth be referred to as the “Efficient Dynamic Auctionfor Heterogeneous Commodities.”

While the theoretical properties of the Efficient Dynamic Auction forHeterogeneous Commodities are not yet fully developed, and I do not wishto be bound by the result that I now state, it is helpful in ponderingits usefulness to consider the following remarkable result, which I haveproved elsewhere:

THEOREM. Suppose that bidders have purely private values for thecommodities in the auction, and suppose that their utility functions areconcave in the commodities and quasilinear in money. For any initialprice vector and for any initial value in bidders' payment accounts:

(i) sincere bidding by every bidder is a subgame perfect equilibrium ofthe Efficient Dynamic Auction for Heterogeneous Commodities; and

(ii) with sincere bidding, the price vector converges to a Walrasianequilibrium price, and hence the allocation of commodities attains fulleconomic efficiency.

Unlike auction procedures in the prior art, the present invention willtend to yield fully-efficient outcomes, if bidders bid optimally.

While the previous and following description of the Efficient DynamicAuction for Heterogeneous Commodities is framed largely in terms ofregular auctions to sell (where bidders are buyers), the invention isequally applicable for reverse or procurement auctions to buy (wherebidders are sellers). For the sake of brevity, this specification willnot run through the process a second time with the roles of selling andbuying reversed, but it should be clear to anybody skilled in the artthat the technology can be equally used in both situations.

FIG. 5 is a flow diagram of a subprocess of step 110. It begins withstep 110-1, in which a bidder i who has not yet been considered isselected. In step 110-2, a “payment-account-calculation indicator” forbidder i is examined. This indicator is set equal to 1 if changes tobidder i's payment account are supposed to be calculated at this step ofthe auction; and this indicator is set equal to 0, otherwise. In thepreferred embodiment of the present invention that yields the theoremstated above, this indicator is always set equal to 1 (and so the steps110-3 and 110-4 are always performed). However, in other embodiments ofthe present invention, the payment-account-calculation indicator isinitially set equal to 0 and is changed to 1 only when specific criteriaare satisfied, or never at all.

If the payment-account-calculation index is already equal to 1, theprocess goes to step 110-3. In step 110-3, for each k=1, . . . , m, acomputer calculates:$\Delta_{k}^{i,t} = {\sum\limits_{j \neq i}\quad\left( {Q_{k}^{j,t} - Q_{k}^{j,{t - 1}}} \right)}$That is, Δ_(k) ^(i,t) is the change in the aggregate demands of bidderi's opponents for items of type k, between the previous bids and thecurrent bids. Δ_(k) ^(i,t) is calculated as follows: for each type k ofitem in the auction and for each opposing bidder j≠i, the computer takesthe difference between bidder j's demand at time t for items of type kand bidder j's demand at time t−1 for items of type k. Summing this,over all opposing bidders j≠i, yields Δ_(k) ^(i,t).

The process then proceeds to step 110-4, in which the payment accountvalue for bidder i is updated. In the preferred embodiment of thepresent invention that yields the theorem stated above, the paymentaccount value for bidder i can initially be set to any arbitraryconstant. One initial value that has desirable theoretical propertiesis:${\sum\limits_{k = 1}^{m}\quad{P_{k}^{0}\left( {{\overset{\_}{Q}}_{k} - {\sum\limits_{j \neq i}\quad Q_{k}^{j,0}}} \right)}},$where P_(k) ⁰ denotes the initial price for the commodity of type k, andQ_(k) ^(j,0) is opposing bidder j's initial demand for the commodity oftype k. After the initial time that step 110-4 is executed for bidder i,the previous payment account value, denoted A^(i,t−1), is recalled. Anupdated payment account value, denoted A^(i,t), is computed by thefollowing equation:$A^{i,t} = {A^{i,{t - 1}} - {\sum\limits_{k = 1}^{m}\quad{\Delta_{k}^{i,t}{P_{k}^{t}.}}}}$This equation for updating the payment account value has the followinginterpretation: bidder i is credited with the quantity −Δ_(k) ^(i,t) ofitems of type k. Effectively, every time bidder i's opponents changetheir aggregate quantity demanded by −Δ_(k) ^(i,t) units, the auctionprocess implicitly assumes that −Δ_(k) ^(i,t) units will be awarded tobidder i, and the auction process charges bidder i the current pricevector of P_(k) ^(i) for each of these units. (Moreover, if ever bidderi's opponents increase their aggregate quantity demanded, so that Δ_(k)^(i,t) is a positive number, then bidder i is debited with the quantityΔ_(k) ^(i,t) of items of type k. The auction process implicitly thenassumes that Δ_(k) ^(i,t) units will be taken away from bidder i, andthe auction process pays bidder i the current price vector of P_(k) ^(t)for each of these units.) It is not necessary that literally the currentprice vector, P_(k) ^(t), is used in step 110-4. In other embodiments,the previous price vector, P_(k) ^(t−1), or some price in the intervalbetween P_(k) ^(t−1) and P_(k) ^(t) is used. The process then proceedsto step 110-5, where it is determined whether all bidders have beenconsidered. If not, the process loops back to step 110-1. If all biddershave been considered, the process goes to step 112 of FIG. 4.

If the payment-account-calculation indicator for bidder i is not equalto 1, the process goes to step 110-6. In step 110-6, it is determinedwhether the payment-account-calculation indicator should be set equalto 1. As stated earlier, in the preferred embodiment of the presentinvention that yields the theorem stated above, this step is neverreached, as the indicator is always set equal to 1. However, anotherexemplary embodiment of the present invention would only have theindicator set equal to 1 for bidder i when the aggregate demand ofbidder i's opponents drops to less than the available quantity. Yetanother exemplary embodiment of the present invention would only havethe indicator set equal to 1 when the aggregate demand of all biddersdrops to less than a predetermined percentage of the available quantity,for example when the aggregate demand of all bidders first becomes lessthan 120% of the available quantity.

If the payment-account-calculation indicator for bidder i should be setequal to 1, the process goes to step 110-7, where the indicator forbidder i is set equal to 1. The process then continues with steps 110-3and 110-4, where changes to bidder i's payment account value arecalculated. If the payment-account-calculation indicator for bidder ishould not be set equal to 1, the process loops directly to step 110-5without changing the payment account value for bidder i.

It is useful for understanding the Efficient Dynamic Auction forHeterogeneous Commodities to, at this point, work through an example ofthe auction process where there are two types of items (i.e., m=2).Real-world examples fitting this description may include the sale ofthree-month and six-month Treasury bills, or the sale of base-load andpeak-load electricity. However, we will generically refer to them ascommodity A and commodity B. Suppose that the supply vector is (10,8),i.e., commodities A and B are available in supplies of 10 and 8,respectively, and suppose that there are n=3 bidders. The auctioneerinitially announces a price vector of p₁=(3,4), and subsequently adjuststhe price vector to p₂=(4,5), p₃=(5,7), p₄=(6,7), and finally p₅=(7,8).The bidders' reports of quantities demanded at these price vectors areshown in Table 1: TABLE 1 Price and Quantity Vectors for IllustrativeExample with m = 2 Price Vector Bidder 1 Bidder 2 Bidder 3 p₁ = (3, 4)(5, 4) (5, 4) (5, 4) p₂ = (4, 5) (4, 4) (5, 4) (4, 3) p₃ = (5, 7) (4, 3)(4, 4) (4, 1) p₄ = (6, 7) (4, 3) (4, 4) (3, 2) p₅ = (7, 8) (4, 2) (3, 4)(3, 2)

The crediting of units to bidders occurs as follows. First, considerBidder 1. When the price vector advances from p₁=(3,4) to p₂=(4,5), thesum of the quantity vectors demanded by Bidder 1's opponents decreasesfrom (10,8) to (9,7). Thus, 1 unit of commodity A and 1 unit ofcommodity B can be thought of as becoming available to Bidder 1 at thecurrent price of p₂=(4,5). The auction algorithm lakes this literally,by crediting 1 unit of commodity A at a price of 4, and 1 unit ofcommodity B at a price of 5, to Bidder 1. Next, consider Bidder 2. Whenthe price vector advances from p₁=(3,4) to p₂=(4,5), the sum of thequantity vectors demanded by Bidder 2's opponents decreases from (10,8)to (8,7). Thus, 2 units of commodity A and 1 unit of commodity B can bethought of as becoming available to Bidder 2 at the current price. Theauction algorithm takes this literally, by crediting 2 units ofcommodity A at a price of 4, and 1 unit of commodity B at a price of 5,to Bidder 2. Finally, consider Bidder 3. When the price vector advancesfrom p₁=(3,4) to p₂=(4,5), the sum of the quantity vectors demanded byBidder 3's opponents decreases from (10,8) to (9,8). Thus, 1 unit ofcommodity A and 0 units of commodity B can be thought of as becomingavailable to Bidder 3 at the current price. Again, the auction algorithmtakes this literally, by crediting 1 unit of commodity A at a price of4, and 0 units of commodity B at a price of 5, to Bidder 3.

The process continues as the price vector advances. One interestingmoment occurs when the price advances from p₃=(5,7) to p₄=(6,7). Observethat Bidder 3's demand vector changes from (4,1) to (3,2), while theother bidders' demand vectors remain constant. In particular, Bidder 3'sdemand for commodity B increases, meaning that 1 fewer unit of commodityB remains available for Bidders 1 and 2. Consequently, the auctionalgorithm needs to take this literally, by debiting 1 unit of commodityB at the current price of 7 from each of Bidders 2 and 3.

The entire progression of units credited and debited—and the associatedprogression of changes to the bidders' payment accounts—is summarizedfor this example in Table 2: TABLE 2 Credits and Debits for IllustrativeExample with m = 2 Price Vector Bidder 1 Bidder 2 Bidder 3 P₁ = (3, 4)Initialization Initialization Initialization P₂ = (4, 5) 1 unit of Acredited at 4 2 units of A credited at 4 1 unit of A credited at 4 1unit of B credited at 5 1 unit of B credited at 5 0 units of B creditedat 5 Cumulative payment = 9 Cumulative payment = 13 Cumulative payment =4 P₃ = (5, 7) 1 unit of A credited at 5 0 units of A credited at 5 1unit of A credited at 5 2 units of B credited at 7 3 units of B creditedat 7 1 unit of B credited at 7 Cumulative payment = 28 Cumulativepayment = 34 Cumulative payment = 16 P₄ = (6, 7) 1 unit of A credited at6 1 unit of A credited at 6 0 units of A credited at 6 1 unit of Bdebited at 7 1 unit of B debited at 7 0 units of B credited at 7Cumulative payment = 27 Cumulative payment = 33 Cumulative payment = 16P₅ = (7, 8) 1 unit of A credited at 7 0 units of A credited at 7 1 unitof A credited at 7 0 units of B credited at 8 1 unit of B credited at 81 unit of B credited at 8 Cumulative payment = 34 Cumulative payment =41 Cumulative payment = 31

At p₅=(7,8), supply and demand are now in balance for both commodities.Thus, p₅ becomes the final price. Bidders 1, 2 and 3 are allocated thequantity vectors of (4,2), (3,4) and (3,2), respectively, that theydemanded at the final price. In addition, Bidders 1, 2 and 3 are chargedpayments of 34, 41 and 31, respectively, the amounts accrued in theirpayment accounts at the end of the auction. Since many of the creditsand debits in the sequence occurred at earlier prices, bidders' paymentsdo not generally equal their final quantity vectors evaluated at thefinal prices. Rather, if the procedure described above is performedalong a continuous price path, the bidders' payments are related tothose derived from a Vickrey auction (also known as aVickrey-Clarke-Groves mechanism). I develop this result elsewhere.

Embodiments of the Invention Concerned with Applying Constraints to Bids

FIGS. 6 a and 6 b are flow diagrams of two exemplary subprocesses ofstep 108. The process of FIG. 6 a begins with step 108 a-1, in which abidder i who has not yet been considered is selected. In step 108 a-2, abid (Q_(k) ^(i,t))_(k∈G) by bidder i which has not yet been consideredis selected. G is defined to be a group of item types. G is a nonemptysubset of {1, . . . , m}, the set of all item types. In step 108 a-3, itis checked whether each quantity Q_(k) ^(i,t) in the selected bid is anonnegative integer. If each component of the bid is a nonnegativeinteger, the process goes to step 108 a-4. In step 108 a-4, it ischecked whether the selected bid is consistent with bidder i's initialeligibility, that is, whether:${{\sum\limits_{k \in G}\quad Q_{k}^{i,t}} \leq {\overset{\_}{Q}}_{G}^{i}},$where bidder i's initial eligibility, Q _(G) ^(i), for group G may, forexample, be determined by the level of financial guarantee posted bybidder i. If the selected bid is consistent with bidder i's initialeligibility, the process goes to step 108 a-5, where bidder i's mostrecent previously-processed bid for group G, denoted (Q_(k)^(i,t−1))_(k∈G), is recalled. In step 108 a-6, it is checked whether theselected bid is consistent with the auction's activity rule, that is,whether the constraint:${{\sum\limits_{k \in G}\quad Q_{k}^{i,t}} \leq {\sum\limits_{k \in G}\quad Q_{k}^{i,{t - 1}}}},$is satisfied. If it is, the process continues to step 108 a-7, where theselected bid (Q_(k) ^(i,t))_(k∈G) is entered as a valid bid by bidder ion group G. Optionally, bidder i is sent a message confirming to himthat the bid is valid. The process then goes to step 108 a-8, where itis determined whether all bids by bidder i have been considered. If not,the process loops back to step 108 a-2. If all bids by bidder i havebeen considered, the process continues to step 108 a-9, where it isdetermined whether all bidders have been considered. If not, the processloops back to step 108 a-1. If all bidders have been considered, theprocess goes to step 110 of FIG. 4.

If the selected bid fails any of the checks at steps 108 a-3, 108 a-4 or108 a-6, the process instead goes to step 108 a-10, where a message isoutputted to bidder i that the selected bid is invalid. The selected bidthen is not entered as a valid bid. The process then goes to step 108a-8, where it is determined whether all bids by bidder i have beenconsidered. If not, the process loops back to step 108 a-2. If all bidsby bidder i have been considered, the process continues to step 108 a-9,where it is determined whether all bidders have been considered. If not,the process loops back to step 108 a-1. If all bidders have beenconsidered, the process goes to step 110 of FIG. 4.

The process of FIG. 6 b begins with step 108 b-1, in which a bidder iwho has not yet been considered is selected. In step 108 b-2, a bid(Q_(k) ^(i,t))_(k∈G) by bidder i which has not yet been considered isselected. In step 108 b-3, it is checked whether each quantity Q_(k)^(i,t) in the selected bid satisfies the constraint:${{\sum\limits_{k \in G}\quad{C_{k}^{i,t}Q_{k}^{i,t}}} \leq {\overset{\_}{C}}_{G}^{i,t}},$where C_(k) ^(i,t) and C _(G) ^(i,t) are arbitrary constants. If theconstraint of step 108 b-3 is satisfied, the process goes to step 108b-4. In step 108 b-4, it is checked whether each quantity Q_(k) ^(i,t)in the selected bid satisfies the constraint:${{\sum\limits_{k \in G}\quad{C_{k}^{{\prime\quad i},t}Q_{k}^{i,t}}} \geq {\hat{C}}_{G}^{i,t}},$where C_(k) ^(i,t) and Ĉ_(G) ^(i,t) are arbitrary constants. If theconstraint of step 108 b-4 is satisfied, the process goes to step 108b-5, where it is checked whether the selected bid was submitted at atime no earlier than the starting time of the current round. If it was,the process goes to step 108 b-6, where it is checked whether theselected bid was submitted at a time no later than the ending time ofthe current round. If it was, the process continues to step 108 b-7,where the selected bid (Q_(k) ^(i,t))_(k∈G) is entered as a valid bid bybidder i on group G. Optionally, bidder i is sent a message confirmingto him that the bid is valid. The process then goes to step 108 b-8,where it is determined whether all bids by bidder i have beenconsidered. If not, the process loops back to step 108 b-2. If all bidsby bidder i have been considered, the process continues to step 108 b-9,where it is determined whether all bidders have been considered. If not,the process loops back to step 108 b-1. If all bidders have beenconsidered, the process goes to step 110 of FIG. 4.

If the selected bid fails any of the checks at steps 108 b-3, 108 b-4,108 b-5 or 108 b-6, the process instead goes to step 108 b-10, where amessage is outputted to bidder i that the selected bid is invalid. Theselected bid then is not entered as a valid bid. The process then goesto step 108 b-8, where it is determined whether all bids by bidder ihave been considered. If not, the process loops back to step 108 b-2. Ifall bids by bidder i have been considered, the process continues to step108 b-9, where it is determined whether all bidders have beenconsidered. If not, the process loops back to step 108 b-1. If allbidders have been considered, the process goes to step 110 of FIG. 4.

Embodiments Concerned with Continuing the Auction and Price Adjustments

FIG. 7 is a flow diagram of a subprocess of step 112 of FIG. 4. Itillustrates an exemplary process by which a computer may determinewhether the auction should continue. (Related to this will also be FIG.9 b, below, which illustrates an exemplary process by which a computerdetermines whether the auction should continue, in a system wherebidders are permitted to submit Intra-Round Bids.) FIG. 7 begins withstep 112 a-1, in which an item type k not yet considered is selected. Instep 112 a-2, a computer determines whether the aggregate quantity bidfor item type k is within C _(k) of the available quantity, that is,whether:${{{- {\overset{\_}{Q}}_{k}} + {\sum\limits_{i = 1}^{n}\quad Q_{k}^{i}}}} \leq {{\overset{\_}{C}}_{k}.}$The constant, C _(k), has the interpretation that this is the toleranceto which the auctioneer is allowing oversell or undersell to occur. Ifthe auctioneer needs to sell exactly the available quantity of item typek, then C _(k)=0. If this inequality is not satisfied, then item type khas not yet cleared, and so the auction should continue. The processthus jumps immediately to step 114 of FIG. 4.

If the inequality of step 112 a-2 is satisfied, the process then goes tostep 112 a-3, where it is determined whether all item types k have beenconsidered. If not, the process loops back to step 112 a-1. However, ifall item types k have already been considered, then it has been foundthat all item types k have cleared within a tolerance of C _(k), and sothe auction should not continue. The process proceeds to step 118 ofFIG. 4, where the final message is generated.

FIG. 8 is a flow diagram of a subprocess of step 114 of FIG. 4. Itillustrates an exemplary process by which a computer may update thecurrent price vector. FIG. 8 begins with step 114-1, in which an itemtype k not yet considered is selected. In step 114-2, a computercalculates the excess demand, denoted Z_(k), for item type k:$Z_{k} = {{- {\overset{\_}{Q}}_{k}} + {\sum\limits_{i = 1}^{n}\quad{Q_{k}^{i}.}}}$

The excess demand, Z_(k), has the interpretation of being the amount bywhich bidders in aggregate are bidding for quantities of item type k, inexcess of the available quantity. The process then goes to step 114-3,where the k^(th) component of the price vector is revised by:P _(k) ^(t+1) =P _(k) ^(t) +C _(k) Z _(k).C_(k) is any arbitrary positive constant. Thus, the price for item typek is raised if bidders bid for more than the available quantity, and theprice for item type k is reduced if bidders bid for less than theavailable quantity. The process then continues to step 114-4, where itis determined whether all item types k have been considered. If not, theprocess loops back to step 114-1. However, if all item types k havealready been considered, then updated prices for all item types havebeen generated, and the process proceeds to step 116 of FIG. 4.

Embodiments Concerned with Intra-Round Bids

In many of the leading dynamic electronic auctions in the prior art,bidders submit bids in a sequence of discrete rounds. For example, inthe Federal Communications Commission auctions for radio communicationsspectrum or in the recent UMTS auctions held by European nations, thefollowing would be a typical bidding schedule for an auction:

-   -   Round 1: 9:00-9:45    -   Round 2: 10:00-10:45    -   Round 3: 11:00-11:45    -   Round 4: 12:00-12:45    -   Round 5: 13:00-13:45    -   Round 6: 14:00-14:45    -   Round 7: 15:00-15:45    -   Round 8: 16:00-16:45        This bidding schedule would have the following interpretation.        During the specified time period of each round, a bidder would        be required to submit a new bid or new collection of bids        (unless this bidder was already the standing high bidder on an        item after the bidding of the previous round). If a bidder who        was required to submit a new bid failed to submit a new bid,        then (except for provisions in the rules concerning automatic        waivers) the bidder would be eliminated from the auction.

By contrast, some other electronic auctions in the prior art—forexample, online auctions at eBay—allow bidding to occur continuously.Rather than adhering to any rigid round schedule, bidders may submitbids at any times that they like up to a specified closing time. Relatedto this, there is no sense that a bidder is required to bid a certainamount by any particular time in order to retain eligibility to bid at alater time in the auction.

Many or most electronic auctions for high-valued items utilize adiscrete round structure, rather than allowing bidding to occurcontinuously. There appear to be several reasons for this. First, adiscrete round structure has desirable information properties. Theauction can be easily structured so that the results of Round t aredisseminated to bidders before the bids of Round t+1 need to besubmitted. Second, a discrete round structure is especially conducive toenforcing “activity rules,” in which a bidder is required to be active(i.e., either be the standing high bidder or place a new high bid) on agiven number of items in an earlier round of the auction in order tocontinue to bid on a given number of items in a later round of theauction. This forces bidders to effectively disclose to their opponents(through their bidding) the values that they attach to the items,helping to mitigate the well-known “Winner's Curse” present in auctions.Third, a discrete round structure requires a bidder to repeatedlyaffirm, in successive rounds, his willingness to pay a given price foran item in the auction—which may be especially desirable when items suchas communications licenses may sell for millions or billions of dollarsor euros.

At the same time, the desirable properties of a discrete round structuremay come at some considerable cost. It will typically be reasonable tohold only something like 8 to 12 rounds of bidding in a given day. As aresult, the auctioneer must accept at least one of several problems:

-   -   (1) The auction may be required to last a very long time: in        some North American and European spectrum auctions, the bidding        extended more than 20 business days. Such a lengthy auction may        be rather onerous for bidders and for the seller. In particular,        it may discourage bidder participation, causing the seller to        forgo substantial revenues.    -   (2) The bid increment between successive rounds may be required        to be rather substantial: in some North American and European        spectrum auctions, the bid increment between successive rounds        never was allowed to drop below five percent of the previous        bid. It can be argued that a seller suffers an expected revenue        loss which is directly proportional to the minimum bid        increment, so this may cost a seller millions of dollars or        euros.    -   (3) The starting price may be required to be very near to the        expected closing price. This may discourage bidder        participation, as well as potentially eliminating the        possibility of bidders getting caught up in the excitement of        the auction and bidding very high prices (which is one of the        advantages of conducting a dynamic auction). This also runs the        risk that the auction will fail: that is, quantities bid at the        starting price being less than the available quantity at the        auction.        Moreover, in a clock auction, problem (2) above, a large bid        increment, may lead to a heightened risk of “undersell”.        Consider an auction with an available quantity of 100 units of        an item, and suppose a bid increment of five percent. It is        quite plausible that, at a price of $1,000,000 per unit, the        aggregate quantity bid by all bidders would equal 110 units, but        at the next price of $1,050,000 per unit, the aggregate quantity        bid by all bidders would decline to only 60 units. The        auctioneer then faces the unattractive alternatives of: selling        only 60 units out of the available quantity of 100 units at a        price of $1,050,000 each; rationing bidders so that only 100        units, out of the 110 demanded, are sold at $1,000,000; or        restarting the auction at $1,000,000. Observe however that the        “undersell” problem would in all likelihood have been        substantially avoided, had a much smaller bid increment been        possible.

One embodiment of the present invention is a system and method for“Intra-Round Bids.” A discrete round structure—with all of its manyadvantages—is preserved. However, in Round t+1 of the auction, theauction system and method permits bidders to submit bids at pricesbetween the price associated with Round t and the price associated withRound t+1. Bidders have every incentive to utilize Intra-Round Bids, andto the extent that bidders utilize them, the seller should be expectedto attain higher auction revenues and to reduce the probability ofundersell. Thus, a system and method for Intra-Round Bids improves uponthe prior art for auction systems and methods, and has immediatepractical application for dynamic auctions of radio communicationsspectrum, securities and other financial products, electric power, etc.

While the previous and following description of Intra-Round Bids isframed largely in terms of regular auctions to sell (where bidders arebuyers), the invention is equally applicable for reverse or procurementauctions to buy (where bidders are sellers). For the sake of brevity,this specification will not run through the process a second time withthe roles of selling and buying reversed, but it should be clear toanybody skilled in the art that the technology can be equally used inboth situations.

Here is an example illustrating the usefulness and exact meaning ofIntra-Round Bids. Suppose that, in a clock auction with an availablequantity of 100 units, the (end) price per unit associated with Round 4is $1,000,000, and the (end) price per unit associated with Round 5 is$1,050,000. In an auction with discrete bidding rounds, Bidder 1 mightsubmit a bid quantity of 55 units for Round 4 and a bid quantity of 30units for Round 5. If there also exists a Bidder 2 who submits the samebid quantities, then we would have exactly the “undersell” problemdescribed above: an aggregate quantity bid by all bidders of 110 unitsin Round 4 but only 60 units in Round 5 (with available quantity of 100units).

With an auction system and method for Intra-Round Bids, here is anexample of the bids that Bidder 1 might submit for Auction Round 5:

-   -   53 units at $1,010,000 per unit;    -   51 units at $1,020,000 per unit;    -   49 units at $1,030,000 per unit;    -   45 units at $1,035,000 per unit;    -   40 units at $1,040,000 per unit; and    -   30 units at $1,045,000 per unit.

These bids have the following exact meaning: the parameterscorresponding to price indicate the price at which Bidder 1 wishes tochange his quantity demanded as compared to his “previous” (that is,next lower price) bid. Thus, in this example:

-   -   Bidder 1 is willing to purchase 55 units (his previous bid from        Round 4) at prices of $1,000,001-$1,009,999;    -   Bidder 1 is willing to purchase 53 units at prices of        $1,010,000-$1,019,999;    -   Bidder 1 is willing to purchase 51 units at prices of        $1,020,000-$1,029,999;    -   Bidder 1 is willing to purchase 49 units at prices of        $1,030,000-$1,034,999;    -   Bidder 1 is willing to purchase 45 units at prices of        $1,035,000-$1,039,999;    -   Bidder 1 is willing to purchase 40 units at prices of        $1,040,000-$1,044,999; and    -   Bidder 1 is willing to purchase 30 units at prices of        $1,045,000-$1,049,999.        If there also exists a Bidder 2 who submits the same bid        quantities, then the auctioneer would be able to declare the        auction over at a price between $1,030,000 and $1,034,999, with        98 out of the 100 available units sold. The auction revenues are        improved, and the undersell problem is greatly reduced.

FIG. 9 a is a flow diagram of a subprocess of step 106 of FIG. 4. Itillustrates an exemplary process by which a particular bidder i maysubmit Intra-Round Bids. FIG. 9 a begins with step 106-1, in whichbidder i selects a group, G, of item types on which he wishes to place abid. G is a nonempty subset of {1, . . . , m}, the set of all itemtypes. In step 106-2, bidder i selects price parameters for group Grepresenting a price vector between the previous round's price vectorfor group G and the current round's price vector for group G. In step106-3, bidder i selects quantities of the item types of group G that hewould like to take effect as bids at the selected price parameters. Instep 106-4, bidder i expresses whether he wishes to enter more bids. Ifso, the process loops back to step 106-1. If not, the process continuesto step 106-5. In step 106-5, the computer determines whether bidder ihas submitted at least one bid for each group G of item types. If not,the process loops back to step 106-1, and optionally the computerprompts bidder i to submit bids on the groups G of item types on whichbidder i has not submitted at least one valid bid in the current round.If so, the process goes to step 108 of FIG. 4.

FIG. 9 b is a flow diagram of a subprocess of step 112 of FIG. 4. Itillustrates an exemplary process by which a computer determines whetherthe auction should continue, in a system where bidders are permitted tosubmit Intra-Round Bids. FIG. 9 b begins with step 112 b-1, in which agroup G of item types not yet considered is selected. G is a nonemptysubset of {1, . . . , m}, the set of all item types. In step 112 b-2, acomputer sorts all bids entered for group G in the current round. Thesorting is done: first, by bidder ID; second, by price parameter in theentered bid (in descending order); and third, by time stamp ofsubmission (in descending order). In step 112 b-3, a computer selects,for each bidder i, the bid, Q_(G) ^(i), for group G with the highestprice parameter (and then the latest time stamp). In step 112 b-4, acomputer determines whether the aggregate quantity bid for group G is nogreater than the available quantity, that is, whether:${\sum\limits_{i = 1}^{n}\quad{\sum\limits_{k \in G}\quad Q_{k}^{i}}} \leq {{\overset{\_}{Q}}_{G}.}$If this inequality is not satisfied, then group G of item types has notyet cleared, and so the auction should continue. The process thus jumpsimmediately to step 114 of FIG. 4.

If the inequality of step 112 b-4 is satisfied, the process then goes tostep 112 b-5, where it is determined whether all groups G of item typeshave been considered. If not, the process loops back to step 112 b-1.However, if all groups G of item types have already been considered,then it has been found that all groups G of item types have cleared, andso the auction should not continue. The process proceeds to step 118 ofFIG. 4, where the final message is generated.

FIG. 9 c is a flow diagram of a subprocess of step 118 of FIG. 4. Itillustrates an exemplary process by which a computer determines finalallocations and payments, in a system where bidders are permitted tosubmit Intra-Round Bids. FIG. 9 c begins with step 118 b-1, in which foreach bid entered in the current round, a computer expresses the priceparameter as a percentage of the distance from the previous round'sprice vector to the current round's price vector. For example, in theexample discussed above, where the (end) price per unit associated withRound 4 was $1,000,000, and the (end) price per unit associated withRound 5 was $1,050,000, a bid with a price parameter corresponding to$1,020,000 would imply a percentage distance parameter of 40%. In step118 b-2, a computer sorts the percentage distance parameters fromsmallest to largest, and denotes them π₁<π₂< . . . <π_(N). In step 118b-3, a computer initializes the percentage distance parameter underconsideration, denoted π, to be the smallest value, π₁. In step 118 b-4,a group G of item types not yet considered is selected. In step 118 b-5,a computer sorts all bids entered for group G in the current round. Thesorting is done: first, by bidder ID; second, by percentage distanceparameter in the entered bid (in descending order); and third, by timestamp of submission (in descending order). In step 118 b-6, a computerselects, for each bidder i, the bid, Q_(G) ^(i), for group G with thehighest percentage distance parameter that is less than or equal to π(and then the latest time stamp). In step 118 b-7, a computer determineswhether the aggregate quantity bid for group G is no greater than theavailable quantity, that is, whether:${\sum\limits_{i = 1}^{n}{\sum\limits_{k \in G}Q_{k}^{i}}} \leq {{\overset{\_}{Q}}_{G}.}$If this inequality is not satisfied, then group G of item types has notyet cleared at percentage distance parameter π, and so π needs to beincremented. The process thus goes to step 118 b-9, where π is advancedto the next percentage distance parameter among π₁<π₂< . . . <π_(N). Theprocess then loops back to step 118 b-4, using the new higher value forπ and starting over for groups G of item types.

If the inequality of step 118 b-7 is satisfied, the process continues tostep 118 b-8, where it is determined whether all groups G of item typeshave been considered. If not, the process loops back to step 118 b-4.However, if all groups G of item types have already been considered,then it has been found that all groups G of item types have cleared atpercentage distance parameter π. Thus, the percentage distance parameterπ implies market-clearing prices for the auction. The process proceedsto calculate the price vector implied by percentage distance parameterπ, to note the quantities bid by all bidders at this price vector, andto incorporate these computations into a final message that is outputtedfrom a machine.

Observe that if the system and method for a dynamic clock auction withIntra-Round Bids is operated—but if the payment-account-calculationindicator of FIG. 5 is fixed at 0—this yields an embodiment of thepresent invention where bidders' payments are simply the dot products oftheir final bid vectors and the final price vector. Thus, the presentinvention also provides a fast and effective way to run a dynamic clockauction with a discrete round structure and uniform prices, practicaluse of the present invention.

1. A method useful in applying a constraint in a clock auction of two ormore types of items, at least one of said types of items includingplural items, comprising the steps of: conveying price-relatedinformation, including a price for each said type of item within a groupof two or more said types of items, to at least one bidder, receivingbid-related information, including a quantity for each said type of itemwithin said group of types of items, from said bidder, and applying aconstraint to the bid-related information to require that a sum of thequantities over said group of types of items is no greater than a sum ofthe quantities over said group of types of items contained inbid-related information received from said bidder at an earlier time inthe clock auction.
 2. A method as recited in claim 1 wherein the groupof types of items is all of the types of items in the auction.
 3. Amethod as recited in claim 1 wherein the group of types of items issmaller than all of the types of items in the auction.
 4. A methoduseful in applying a constraint in a clock auction of two or more typesof items, at least one of said types of items including plural items,comprising the steps of: conveying price-related information, includinga price for each said type of item within a group of two or more saidtypes of items, to at least one bidder, receiving bid-relatedinformation, including a quantity for each said type of item within saidgroup of types of items, from said bidder, and applying a constraint tothe bid-related information to require that a sum of the quantities oversaid group of types of items is no greater than a sum of the quantitiesover said group of types of items contained in bid-related informationreceived from said bidder associated with lower prices in the clockauction.
 5. A method as recited in claim 4 wherein the group of types ofitems is all of the types of items in the auction.
 6. A method asrecited in claim 4 wherein the group of types of items is smaller thanall of the types of items in the auction.
 7. A method useful in applyinga constraint in a clock auction of two or more types of items, at leastone of said types of items including plural items, comprising the stepsof: conveying price-related information, including a price for each saidtype of item within a group of two or more said types of items, to atleast one bidder, receiving bid-related information, including aquantity for each said type of item within said group of types of items,from said bidder, and applying a constraint to the bid-relatedinformation to require that a sum of the quantities over said group oftypes of items is no greater than a sum of the quantities over saidgroup of types of items contained in bid-related information receivedfrom said bidder associated with higher prices in the clock auction. 8.A method as recited in claim 7 wherein the group of types of items isall of the types of items in the auction.
 9. A method as recited inclaim 7 wherein the group of types of items is smaller than all of thetypes of items in the auction.
 10. A computer system for implementing aclock auction employing a constraint in an auction of two or more typesof items, at least one of said types of items including plural items,said system comprising: means for conveying price-related information,including a price for each said type of item within a group of two ormore said types of items, to at least one bidder, means for receivingbid-related information, including a quantity for each said type of itemwithin said group of types of items, from said bidder, and means forapplying a constraint to the bid-related information to require that asum of the quantities over said group of types of items is no greaterthan a sum of the quantities over said group of types of items containedin bid-related information received from said bidder at an earlier timein the clock auction.
 11. A system as recited in claim 10 wherein thegroup of types of items is all of the types of items in the auction. 12.A system as recited in claim 10 wherein the group of types of items issmaller than all of the types of items in the auction.
 13. A computersystem for implementing a clock auction for employing a constraint in anauction of two or more types of items, at least one of said types ofitems including plural items, the computer system for: conveyingprice-related information, including a price for each said type of itemwithin a group of two or more said types of items, to at least onebidder, receiving bid-related information, including a quantity for eachsaid type of item within said group of types of items, from said bidder,and applying a constraint to the bid-related information to require thata sum of the quantities over said group of types of items is no greaterthan a sum of the quantities over said group of types of items containedin bid-related information received from said bidder associated withlower prices in the clock auction.
 14. A system as recited in claim 13wherein the group of types of items is all of the types of items in theauction.
 15. A system as recited in claim 13 wherein the group of typesof items is smaller than all of the types of items in the auction.
 16. Acomputer system for implementing a clock auction employing a constraintin a clock auction of two or more types of items, at least one of saidtypes of items including plural items, the computer system comprising:means for conveying price-related information, including a price foreach said type of item within a group of two or more said types ofitems, to at least one bidder, means for receiving bid-relatedinformation, including a quantity for each said type of item within saidgroup of types of items, from said bidder, and means for applying aconstraint to the bid-related information to require that a sum of thequantities over said group of types of items is no greater than a sum ofthe quantities over said group of types of items contained inbid-related information received from said bidder associated with higherprices in the clock auction.
 17. A system as recited in claim 16 whereinthe group of types of items is all of the types of items in the auction.18. A system as recited in claim 16 wherein the group of types of itemsis smaller than all of the types of items in the auction.